package com.xixi.demo02.util;


import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.SQLException;

//建立完index.jsp登录页面，进行第二步的servlet  进行第三步连接数据库
public class DbUtil {
    private static String jdbcName;   //加载数据库驱动
    private static String dbUrl;
    private static String dbUserName;
    private static String dbPassword;

    static {
        jdbcName="com.mysql.jdbc.Driver";
        dbUrl="jdbc:mysql://localhost:3306/db_wed";
        dbUserName="root";
        dbPassword="123456";

        try {
            //获取字符串参数中指定的类，并初始化该类  这句代码是使用在JDBC方式连接数据库
            //在一些事先不知道使用者将加载什么类，又必须让使用者指定类名称
            Class.forName(jdbcName);
        } catch (ClassNotFoundException e) {
            e.printStackTrace();
        }
    }
//获取连接数据库
    public static Connection getConnection() throws SQLException {
      //获取试图建立到数据库url的连接 DriverManager 试图从已注册的 JDBC 驱动程序集中选择一个适当的驱动程序。
       Connection connection= DriverManager.getConnection(dbUrl,dbUserName,dbPassword);
      return  connection;
    }
//关闭连接     PreparedStatement接口是继承Statement就是准备sqly
    public static void closeResource(Connection connection, PreparedStatement preparedStatement){
//关闭数据库的连接
if(null !=connection){
    try {
        connection.close();
    } catch (SQLException e) {
        e.printStackTrace();
    }
}
//关闭sql语句的占位符
if(null !=preparedStatement)
    try {
        preparedStatement.close();
    } catch (SQLException e) {
        e.printStackTrace();
    }
    }
}
